#ifndef SPRITESHEET_H
#define SPRITESHEET_H

#include "Texture.h"
#include "animation.h"

/*!
 * 	\class SpriteSheet
 * 	\brief	Décrit une animation à partir d'une spriteSheet
 */
 
class SpriteSheet : public Animation
{
	public:
	
	/****************************************************/
	/*					Propriétés						*/
	/****************************************************/
	
	Texture * texture;		/*!< Texture contenant la "spriteSheet", contenant plusieurs étapes d'une animation	*/
	
	float width;		/*!< Longueur d'une étape de l'animation en x relatif à la taille de la texture, compris entre 0 et 1 */
	float height;		/*!< Largeur d'une étape de l'animation en y relatif à la taille de la texture, compris entre 0 et 1 */
	
	/****************************************************/
	/*					Constructeurs					*/
	/****************************************************/
	
	SpriteSheet(int aWidth, int aHeight, int aNbStep, int aInterval, int aTime, Texture * aTexture);
	
	/****************************************************/
	/*					Méthodes						*/
	/****************************************************/
	
	virtual void Use();
	virtual void NextStep();
	virtual void CheckTime(int currentTime);
	
};
#endif
